package com.example.appointment.service;

import com.example.appointment.dto.HealthCheckDTO;
import com.example.appointment.dto.HealthCheckStatsDTO;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

import java.time.LocalDate;

public interface HealthCheckService {
    HealthCheckDTO createHealthCheck(HealthCheckDTO healthCheckDTO);
    
    HealthCheckDTO getHealthCheck(Long id);
    
    Page<HealthCheckDTO> getHealthChecks(Long userId, String type, LocalDate startDate, LocalDate endDate, Pageable pageable);
    
    HealthCheckDTO updateHealthCheck(Long id, HealthCheckDTO healthCheckDTO);
    
    void deleteHealthCheck(Long id);
    
    HealthCheckStatsDTO getHealthCheckStats(Long userId, String timeRange);
} 